Inactivity reminder
Note: Inactivity reminders apply only to speech-to-speech models. For regular (non-speech-to-speech) models, see Progress and error messages.
Speech-to-speech models do not natively handle "user goes silent" scenarios – when the user stops talking, the model simply keeps waiting. The inactivity_reminder advanced configuration parameter detects user silence and sends a reminder text to the model, prompting it to re-engage the user.
This is currently supported by:
- OpenAI Realtime models –
gpt-realtime,gpt-realtime-mini,gpt-realtime-1.5 - Gemini audio models –
gemini-2.5-flash-native-audio,gemini-3.1-flash-live– only when Silero VAD is enabled (gemini_audio.vad_modeset tosilero, as described in VAD mode for Gemini models)
If the user remains silent for the configured timeout, the reminder text is sent to the model. After the model responds, the timer re-arms and may fire again for the same silent period, up to repeat times. The counter resets once the user speaks.
| Parameter | Type | Description |
|---|---|---|
timeout
|
int | Duration of user silence, in milliseconds, after which the reminder text is sent to the model. |
text
|
str | Reminder text sent to the model. Optional, defaults to Note: user has been silent for {silence_time} seconds.Supports the variables listed below. |
repeat
|
int | Maximum number of reminders sent during a single silence period. Optional, default is 3, maximum is 10. |
The text parameter supports the following variables:
{count}– number of inactivity events fired during the current silent period (resets when the user speaks){timeout}– the configured timeout, in seconds (with up to one decimal digit, e.g.2or2.4){silence_time}– elapsed time since the agent finished playing its last response, in seconds
For example:
{
"inactivity_reminder": {
"timeout": 5000,
"text": "NOTE: User has been silent for {silence_time} seconds. Please re-engage them.",
"repeat": 3
}
}
Note: This is distinct from the flow-level no_user_input_repeat parameter, which repeats the last response on NO-USER-INPUT events for textual (non-speech-to-speech) agents. See Handling user inactivity.